package com.pagoda.nerp.trade.entity;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

@JsonSerialize(include= JsonSerialize.Inclusion.NON_NULL)
public class AccModule {
    /**
     * 功能/子权限ID
     *
     * @mbg.generated
     */
    private Integer moduleId;

    /**
     * 功能/子权限名称
     *
     * @mbg.generated
     */
    private String moduleName;

    /**
     * 功能/子权限编码(助记码)
     *
     * @mbg.generated
     */
    private String moduleCode;

    /**
     * 功能/子权限描述
     *
     * @mbg.generated
     */
    private String moduleDesc;

    /**
     * 是否菜单：(N：否；Y：是)，是菜单则显示
     *
     * @mbg.generated
     */
    private String isMenu;

    /**
     * 是否叶子节点：(N：否；Y：是)，是叶子节点可点击链接URL
     *
     * @mbg.generated
     */
    private String isLeaf;

    /**
     * 显示排序
     *
     * @mbg.generated
     */
    private Integer orderSeq;

    /**
     * 上级菜单编号
     *
     * @mbg.generated
     */
    private Integer parentModuleId;

    /**
     * 链接URL：只有Is_Leaf='Y'时有效
     *
     * @mbg.generated
     */
    private String linkUrl;

    /**
     * 创建人
     *
     * @mbg.generated
     */
    private String createUser;

    /**
     * 创建时间
     *
     * @mbg.generated
     */
    private Date createTime;

    /**
     * 修改人
     *
     * @mbg.generated
     */
    private String modifyUser;

    /**
     * 修改时间
     *
     * @mbg.generated
     */
    private Date modifyTime;

    /**
     * 子目录列表
     */
    private List<AccModule> childModules = new ArrayList<AccModule>();

    public Integer getModuleId() {
        return moduleId;
    }

    public void setModuleId(Integer moduleId) {
        this.moduleId = moduleId;
    }

    public String getModuleName() {
        return moduleName;
    }

    public void setModuleName(String moduleName) {
        this.moduleName = moduleName == null ? null : moduleName.trim();
    }

    public String getModuleCode() {
        return moduleCode;
    }

    public void setModuleCode(String moduleCode) {
        this.moduleCode = moduleCode == null ? null : moduleCode.trim();
    }

    public String getModuleDesc() {
        return moduleDesc;
    }

    public void setModuleDesc(String moduleDesc) {
        this.moduleDesc = moduleDesc == null ? null : moduleDesc.trim();
    }

    public String getIsMenu() {
        return isMenu;
    }

    public void setIsMenu(String isMenu) {
        this.isMenu = isMenu == null ? null : isMenu.trim();
    }

    public String getIsLeaf() {
        return isLeaf;
    }

    public void setIsLeaf(String isLeaf) {
        this.isLeaf = isLeaf == null ? null : isLeaf.trim();
    }

    public Integer getOrderSeq() {
        return orderSeq;
    }

    public void setOrderSeq(Integer orderSeq) {
        this.orderSeq = orderSeq;
    }

    public Integer getParentModuleId() {
        return parentModuleId;
    }

    public void setParentModuleId(Integer parentModuleId) {
        this.parentModuleId = parentModuleId;
    }

    public String getLinkUrl() {
        return linkUrl;
    }

    public void setLinkUrl(String linkUrl) {
        this.linkUrl = linkUrl == null ? null : linkUrl.trim();
    }

    public String getCreateUser() {
        return createUser;
    }

    public void setCreateUser(String createUser) {
        this.createUser = createUser == null ? null : createUser.trim();
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String getModifyUser() {
        return modifyUser;
    }

    public void setModifyUser(String modifyUser) {
        this.modifyUser = modifyUser == null ? null : modifyUser.trim();
    }

    public Date getModifyTime() {
        return modifyTime;
    }

    public void setModifyTime(Date modifyTime) {
        this.modifyTime = modifyTime;
    }

    public List<AccModule> getChildModules() {
        return childModules;
    }

    public void setChildModules(List<AccModule> childModules) {
        this.childModules = childModules;
    }


}